package com.zjsru.oneDay;

/**
 * 3403. 从盒子中找出字典序最大的字符串 I
 *
 * @Author: cookLee
 * @Date: 2025-06-04
 */
public class AnswerString {

    /**
     * 主
     * \
     * 输入: word = "dbca", numFriends = 2
     * 输出: "dbc"
     * 解释:
     * 所有可能的分割方式为：
     * "d" 和 "bca"。
     * "db" 和 "ca"。
     * "dbc" 和 "a"。
     * \
     *
     * @param args args
     */
    public static void main(String[] args) {
        AnswerString answerString = new AnswerString();
        System.out.println(answerString.answerString("adbc", 2));
    }

    public String answerString(String word, int numFriends) {
        if (word == null || word.isEmpty() || numFriends == 0) {
            return "";
        }
        if (numFriends == 1) {
            return word;
        }
        int len = word.length();
        String ans = "";
        for (int i = 0; i < len; i++) {
            //获取可执行的最大字符长度
            int maxLen = Math.min(len - numFriends + i + 1, len);
            String substring = word.substring(i, maxLen);
            if (substring.compareTo(ans) > 0) {
                ans = substring;
            }
        }
        return ans;
    }

}
